broadway: Implement gdk_display_flush
authorAlexander Larsson <alexl@redhat.com>
Fri, 11 Mar 2011 13:37:39 +0000 (14:37 +0100)
committerAlexander Larsson <alexl@redhat.com>
Fri, 11 Mar 2011 13:37:39 +0000 (14:37 +0100)
gdk/broadway/gdkdisplay-broadway.c
gdk/broadway/gdkwindow-broadway.c

index c75b0c4fb3158f7a1a074decbee15d9263b25cca..7e7bdff051bf105e1b16bce174d9fddf68238e52 100644 (file)
@@ -679,8 +679,17 @@ gdk_broadway_display_sync (GdkDisplay *display)
 static void
 gdk_broadway_display_flush (GdkDisplay *display)
 {
+  GdkBroadwayDisplay *broadway_display = GDK_BROADWAY_DISPLAY (display);
+
   g_return_if_fail (GDK_IS_DISPLAY (display));
 
+  if (broadway_display->output &&
+      !broadway_output_flush (broadway_display->output))
+    {
+      broadway_display->saved_serial = broadway_output_get_next_serial (broadway_display->output);
+      broadway_output_free (broadway_display->output);
+      broadway_display->output = NULL;
+    }
 }
 
 static gboolean
index 6dc3f6842cfe074fed48ef5f2aa10f0adb60abe9..9659a36aa7c6585c4ec5db29ae781ea44a914aa4 100644 (file)
@@ -184,12 +184,7 @@ dirty_flush_idle (gpointer data)
        }
     }
 
-  if (!broadway_output_flush (display->output))
-    {
-      display->saved_serial = broadway_output_get_next_serial (display->output);
-      broadway_output_free (display->output);
-      display->output = NULL;
-    }
+  gdk_display_flush (GDK_DISPLAY (display));
 
   return FALSE;
 }
@@ -236,7 +231,7 @@ _gdk_broadway_resync_windows (void)
        }
     }
 
-  broadway_output_flush (display->output);
+  gdk_display_flush (GDK_DISPLAY (display));
 }
 
 static void